文件,內含一或多個 Tab
物件,每個物件都含有 RTF 格式和
元素,例如表格和清單。
文件可以使用 DocumentApp
開啟或建立。
// Open a document by ID. var doc = DocumentApp.openById("<my-id>"); // Create and open a document. doc = DocumentApp.create("Document Title");
可用來直接存取及修改文字內容的 Document
類別方法
使用中的分頁 (在指令碼中「繫結」至
特定文件) 或第一個分頁 (如果無法使用有效的分頁)。指令碼依賴
這些方法 (例如 getBody()
) 都能改用
依序為 getTabs()
和 Tab.asDocumentTab()
。
方法
方法 | 傳回類型 | 簡短說明 |
---|---|---|
addBookmark(position) | Bookmark | 將 Bookmark 新增至第一個標籤Position 至第一個標籤,針對
文件「繫結」至文件、使用中的分頁。 |
addEditor(emailAddress) | Document | 將特定使用者新增至 Document 的編輯者清單。 |
addEditor(user) | Document | 將特定使用者新增至 Document 的編輯者清單。 |
addEditors(emailAddresses) | Document | 將指定的使用者陣列新增至 Document 的編輯者清單。 |
addFooter() | FooterSection | 將頁尾區段 (如果有的話) 新增至第一個分頁;針對由文件「綁定」文件的指令碼,使用中的分頁新增。 |
addHeader() | HeaderSection | 將標頭區段 (如果有的話) 新增至第一個分頁;針對由「綁定」文件的指令碼 (使用中的分頁) 新增標頭區段。 |
addNamedRange(name, range) | NamedRange | 新增 NamedRange ,這是一個有名稱和 ID 的 Range
之後在第一個分頁中擷取;如果是與文件「繫結」至文件的指令碼,則擷取使用中的分頁。 |
addViewer(emailAddress) | Document | 將特定使用者新增至 Document 的檢視者清單。 |
addViewer(user) | Document | 將特定使用者新增至 Document 的檢視者清單。 |
addViewers(emailAddresses) | Document | 將指定的使用者陣列新增至 Document 的檢視者清單。 |
getActiveTab() | Tab | 在文件中取得使用者目前有效的 Tab 。 |
getAs(contentType) | Blob | 擷取目前的 Document 內容,做為指定類型的 blob。 |
getBlob() | Blob | 將目前的 Document 內容擷取為 blob。 |
getBody() | Body | 擷取第一個分頁的 Body ;如果指令碼「繫結」至文件,則擷取使用中分頁的 DocumentBodySection 。 |
getBookmark(id) | Bookmark | 從第一個分頁中取得含指定 ID 的 Bookmark ;如為綁定文件的指令碼,則為使用中的分頁。 |
getBookmarks() | Bookmark[] | 取得第一個分頁中的所有 Bookmark 物件;對於與文件「繫結」至文件的指令碼,則取得使用中的分頁。 |
getCursor() | Position | 在使用中分頁中取得使用者的遊標。 |
getEditors() | User[] | 取得這個 Document 的編輯者清單。 |
getFooter() | FooterSection | 擷取第一個分頁的頁尾區段,或者如果指令碼「綁定」至文件,則擷取使用中分頁的頁尾 專區。 |
getFootnotes() | Footnote[] | 擷取第一個分頁主體中的所有 Footnote 元素;如果指令碼「繫結」至文件,則擷取使用中分頁的主體。 |
getHeader() | HeaderSection | 擷取第一個分頁的標頭區段,或者如果指令碼「繫結」至文件,則擷取使用中分頁的標頭 專區。 |
getId() | String | 擷取文件的專屬 ID。 |
getLanguage() | String | 取得文件的語言代碼。 |
getName() | String | 擷取文件標題。 |
getNamedRangeById(id) | NamedRange | 從第一個分頁中取得含指定 ID 的 NamedRange ;如為綁定文件的指令碼,則為使用中的分頁。 |
getNamedRanges() | NamedRange[] | 取得第一個分頁中的所有 NamedRange 物件;對於與文件「繫結」至文件的指令碼,則取得使用中的分頁。 |
getNamedRanges(name) | NamedRange[] | 取得第一個分頁中具有指定名稱的所有 NamedRange 物件,或針對含有該名稱的指令碼
已「繫結」至文件,也就是使用中的分頁。 |
getSelection() | Range | 在使用中分頁中取得使用者的選項。 |
getSupportedLanguageCodes() | String[] | 取得 Google 文件檔案支援的所有語言代碼。 |
getTab(tabId) | Tab | 取得具有指定 ID 的 Tab 。 |
getTabs() | Tab[] | 取得文件中的所有未巢狀 Tab 。 |
getUrl() | String | 擷取網址以存取目前的文件。 |
getViewers() | User[] | 取得這個Document 的檢視者和加註者名單。 |
newPosition(element, offset) | Position | 建立新的 Position ,其參照分頁中位置的參照 (相對於
特定元素 (如果是與文件「繫結」的指令碼),則使用中的分頁。 |
newRange() | RangeBuilder | 建立可透過以下標籤元素建構 Range 物件的建構工具:
第一個分頁,如果是繫結至
文件、使用中的分頁。 |
removeEditor(emailAddress) | Document | 將特定使用者從 Document 的編輯者清單中移除。 |
removeEditor(user) | Document | 將特定使用者從 Document 的編輯者清單中移除。 |
removeViewer(emailAddress) | Document | 將特定使用者從 Document 的檢視者和加註者清單中移除。 |
removeViewer(user) | Document | 將特定使用者從 Document 的檢視者和加註者清單中移除。 |
saveAndClose() | void | 儲存目前的 Document 。 |
setActiveTab(tabId) | void | 使用者在目前文件中選取的 Tab 設為具有指定 ID 的分頁。 |
setCursor(position) | Document | 設定 Position 做為使用者的遊標。 |
setLanguage(languageCode) | Document | 設定文件的語言代碼。 |
setName(name) | Document | 設定文件標題。 |
setSelection(range) | Document | 根據 Range ,在使用中分頁中設定使用者的選項。 |
內容詳盡的說明文件
addBookmark(position)
將 Bookmark
新增至第一個標籤Position
至第一個標籤,針對
文件「繫結」至文件、使用中的分頁。如要新增
加入書籤至任何分頁,請使用 DocumentTab.addBookmark(position)
方法。
// Opens the Docs file by its ID. If you created your script from within // a Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById(DOCUMENT_ID); // Gets the active or first tab's body and adds a paragraph. const paragraph = doc.getBody().appendParagraph('My new paragraph.'); // Creates a position at the first character of the paragraph text. const position = doc.newPosition(paragraph.getChild(0), 0); // Adds a bookmark at the first character of the paragraph text. const bookmark = doc.addBookmark(position); // Logs the bookmark ID to the console. console.log(bookmark.getId()); }
參數
名稱 | 類型 | 說明 |
---|---|---|
position | Position | 新書籤的位置。 |
回攻員
Bookmark
:新的書籤。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
addEditor(emailAddress)
addEditor(user)
addEditors(emailAddresses)
addHeader()
將標頭區段 (如果有的話) 新增至第一個分頁;針對由「綁定」文件的指令碼 (使用中的分頁) 新增標頭區段。如何新增頁首
區段至任何分頁,請使用 DocumentTab.addHeader()
方法。
// Opens the Docs file by its ID. If you created your script from within // a Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById(DOCUMENT_ID); // Adds a header to the document's active or first tab. const header = doc.addHeader(); // Sets the header text to 'This is a header.' header.setText('This is a header');
回攻員
HeaderSection
:分頁標頭。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
addNamedRange(name, range)
新增 NamedRange
,這是一個有名稱和 ID 的 Range
之後在第一個分頁中擷取;如果是與文件「繫結」至文件的指令碼,則擷取使用中的分頁。如要在任何分頁中新增 NamedRange
,請使用 DocumentTab.addNamedRange(name, range)
方法。不是名稱
不得重複;同一個文件中,多個不同的範圍可以共用相同的名稱
就像 HTML 中的類別一樣相反地,文件內的 ID 並不會重複,就像 HTML 中的 ID 一樣。
在文件中新增 NamedRange
後,就無法修改,只能移除。
任何可存取文件的指令碼都能存取 NamedRange
。避免無意間
請考慮使用不重複的字串,在範圍名稱前面加上專屬字串。
// Creates a named range that includes every table in the active tab. var doc = DocumentApp.getActiveDocument(); var rangeBuilder = doc.newRange(); var tables = doc.getBody().getTables(); for (var i = 0; i < tables.length; i++) { rangeBuilder.addElement(tables[i]); } // Adds the named range to the document's active tab. doc.addNamedRange('Document tables', rangeBuilder.build());
參數
名稱 | 類型 | 說明 |
---|---|---|
name | String | 範圍名稱 (可以重複)。範圍名稱必須為 長度介於 1 到 256 個字元之間。 |
range | Range | 要與名稱建立關聯的元素範圍;範圍可以是使用中的選取項目、搜尋結果,也可以使用 newRange() 手動建立。 |
回攻員
NamedRange
- NamedRange
。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
addViewer(emailAddress)
addViewer(user)
addViewers(emailAddresses)
getActiveTab()
在文件中取得使用者目前有效的 Tab
。指令碼只能存取
執行指令碼的使用者使用中的分頁,且只有在指令碼已繫結至文件的情況下才能使用。
// Display a dialog box that shows the title of the tab that the // user is currently viewing. const tab = DocumentApp.getActiveDocument().getActiveTab(); DocumentApp.getUi().alert('ID of selected tab: ' + tab.getTitle());
回攻員
Tab
:使用者目前啟用的 Tab
;如果指令碼未繫結,則為 null
文件。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getAs(contentType)
擷取目前的 Document
內容,做為指定類型的 blob。
// Opens the Docs file by its ID. If you created your script from within // a Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById(DOCUMENT_ID); // Gets the document as a PDF. const pdf = doc.getAs('application/pdf'); // Logs the name of the PDF to the console. console.log(pdf.getName());
參數
名稱 | 類型 | 說明 |
---|---|---|
contentType | String | 要轉換為哪種 MIME 類型;系統支援 'application/pdf' 和 'text/markdown' 。 |
回攻員
Blob
:目前做為 blob 的文件。
getBlob()
將目前的 Document
內容擷取為 blob。
// Opens the Docs file by its ID. If you created your script from within // a Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById(DOCUMENT_ID); // Retrieves the current document's contents as a blob and logs it to the console. console.log(doc.getBlob().getContentType());
回攻員
Blob
:目前做為 blob 的文件。
getBody()
擷取第一個分頁的 Body
;如果指令碼「繫結」至文件,則擷取使用中分頁的 DocumentBodySection
。如要取得任何分頁的 DocumentBodySection
,請使用 DocumentTab.getBody()
方法。
分頁可以包含不同類型的版面 (例如 HeaderSection
、FooterSection
)。分頁的有效部分是 Body
。
Document
中的元素方法會委派給使用中的 Body
。
// Opens the Docs file by its ID. If you created your script from within // a Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById(DOCUMENT_ID); // Gets the active or first tab's body. const body = doc.getBody(); // Gets the body text and logs it to the console. console.log(body.getText());
回攻員
Body
- 分頁主體部分。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getBookmark(id)
從第一個分頁中取得含指定 ID 的 Bookmark
;如為綁定文件的指令碼,則為使用中的分頁。若要取得
任何分頁中的書籤,請使用 DocumentTab.getBookmark(id)
方法。如果分頁中沒有這類 Bookmark
,這個方法會傳回 null
。
// Opens the Docs file by its ID. If you created your script from within // a Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById(DOCUMENT_ID); // Gets the bookmark by its ID in the document's active or first tab. const bookmark = doc.getBookmark('id.xyz654321'); // If the bookmark exists, logs the character offset of its position to the console. // otherwise, logs 'No bookmark exists with the given ID.' to the console. if (bookmark) { console.log(bookmark.getPosition().getOffset()); } else { console.log('No bookmark exists with the given ID.'); }
參數
名稱 | 類型 | 說明 |
---|---|---|
id | String | Bookmark 的 ID。 |
回攻員
Bookmark
— 具有指定 ID 的 Bookmark
,如果不能,則null
Bookmark
存在於分頁中
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getBookmarks()
取得第一個分頁中的所有 Bookmark
物件;對於與文件「繫結」至文件的指令碼,則取得使用中的分頁。取得全部
任何分頁中的書籤,請使用 DocumentTab.getBookmarks()
方法。
// Opens the Docs file by its ID. If you created your script from within // a Google Docs file, you can use DocumentApp.getActiveDocument() instead. const doc = DocumentApp.openById(DOCUMENT_ID); // Gets all of the bookmarks in the document's active or first tab. const bookmarks = doc.getBookmarks(); // Logs the number of bookmarks in the tab to the console. console.log(bookmarks.length);
回攻員
Bookmark[]
- 分頁中的 Bookmark
物件陣列。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getCursor()
在使用中分頁中取得使用者的遊標。指令碼只能存取 才能執行指令碼,且只有在指令碼已「繫結」與文件的情況下。
// Insert some text at the cursor position and make it bold. var cursor = DocumentApp.getActiveDocument().getCursor(); if (cursor) { // Attempt to insert text at the cursor position. If the insertion returns null, the cursor's // containing element doesn't allow insertions, so show the user an error message. var element = cursor.insertText('ಠ‿ಠ'); if (element) { element.setBold(true); } else { DocumentApp.getUi().alert('Cannot insert text here.'); } } else { DocumentApp.getUi().alert('Cannot find a cursor.'); }
回攻員
Position
— 以使用者的遊標表示法;如果使用者沒有遊標,則為 null
,或是指令碼未與文件繫結。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getEditors()
getFootnotes()
擷取第一個分頁主體中的所有 Footnote
元素;如果指令碼「繫結」至文件,則擷取使用中分頁的主體。若要取得
任一分頁中的所有註腳,請使用 DocumentTab.getFootnotes()
方法。
呼叫 getFootnotes
會疊代分頁元素。如果是大型分頁
避免對這個方法發出不必要的呼叫。
// Opens the Docs file by its ID. If you created your script from within // a Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById(DOCUMENT_ID); // Gets the first footnote in the active or first tab's body. const footnote = doc.getFootnotes()[0]; // Logs footnote contents to the console. console.log(footnote.getFootnoteContents().getText());
回攻員
Footnote[]
:分頁的註腳。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getHeader()
擷取第一個分頁的標頭區段,或者如果指令碼「繫結」至文件,則擷取使用中分頁的標頭
專區。如要取得任何分頁的標頭區段,請使用 DocumentTab.getHeader()
方法。
// Opens the Docs file by its ID. If you created your script from within // a Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById(DOCUMENT_ID); // Gets the text of the active or first tab's header and logs it to the console. console.log(doc.getHeader().getText());
回攻員
HeaderSection
:分頁的標頭。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getId()
擷取文件的專屬 ID。文件 ID 會用於 DocumentApp.openById()
,以開啟特定的文件執行個體。
回攻員
String
:文件的 ID。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getLanguage()
取得文件的語言代碼。這是文件編輯器的「檔案」中顯示的語言。 >語言,這可能不是文件包含的實際語言。
回攻員
String
:文件語言,如未定義,則為 null
。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getName()
擷取文件標題。
回攻員
String
:文件標題。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getNamedRangeById(id)
從第一個分頁中取得含指定 ID 的 NamedRange
;如為綁定文件的指令碼,則為使用中的分頁。若要取得
在任何分頁中具有指定 ID 的 NamedRange
,使用 DocumentTab.getNamedRangeById(id)
方法。如果分頁中沒有這類 NamedRange
,這個方法會傳回 null
。名稱
有時候會重複,即使在不同的分頁中也是如此同一個分頁中可能有數個不同的範圍
使用相同的名稱,就如同 HTML 中的類別。分頁中的 ID 不得重複
例如 HTML 中的 ID
參數
名稱 | 類型 | 說明 |
---|---|---|
id | String | 範圍 ID (分頁中為專屬 ID)。 |
回攻員
NamedRange
:具有指定 ID 的 NamedRange
;如果沒有這個範圍,則傳回 null
標籤。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getNamedRanges()
取得第一個分頁中的所有 NamedRange
物件;對於與文件「繫結」至文件的指令碼,則取得使用中的分頁。取得全部
任何分頁中的 NamedRange
物件,請使用 DocumentTab.getNamedRanges()
方法。
存取分頁的任何指令碼都可以存取 NamedRange
。為了避免
指令碼之間意外發生衝突,建議您使用不重複的字串為範圍名稱命名。
回攻員
NamedRange[]
:分頁中的 NamedRange
物件陣列,可能包含多個
名稱相同的範圍
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getNamedRanges(name)
取得第一個分頁中具有指定名稱的所有 NamedRange
物件,或針對含有該名稱的指令碼
已「繫結」至文件,也就是使用中的分頁。若要取得
任一分頁中的所有 NamedRange
物件,請使用 DocumentTab.getNamedRanges(name)
方法。名稱不一定會重複,即使是不同分頁中也是如此;這個網路中的
同一個分頁可能會共用相同的名稱,就跟 HTML 中的類別很類似。相反地,
例如 HTML 中的 ID
可存取文件的任何指令碼都能存取 NamedRange
。為了避免
指令碼之間意外發生衝突,建議您使用不重複的字串為範圍名稱命名。
參數
名稱 | 類型 | 說明 |
---|---|---|
name | String | 範圍名稱 (不一定是唯一值)。 |
回攻員
NamedRange[]
— 分頁標籤中具有特定名稱的 NamedRange
物件陣列。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getSelection()
在使用中分頁中取得使用者的選項。指令碼只能存取使用者選取的項目 執行指令碼的對象,以及只有當指令碼繫結至文件時。
// Display a dialog box that tells the user how many elements are included in the selection. var selection = DocumentApp.getActiveDocument().getSelection(); if (selection) { var elements = selection.getRangeElements(); DocumentApp.getUi().alert('Number of selected elements: ' + elements.length); } else { DocumentApp.getUi().alert('Nothing is selected.'); }
回攻員
Range
— 表示使用者選擇的表示法;如果沒有,則為 null
只選取段落結尾 (若僅選取段落結尾) 時,即為分頁中選取的項目
系統會選取段落及換行,或如果指令碼未與文件繫結,
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getSupportedLanguageCodes()
取得 Google 文件檔案支援的所有語言代碼。
回攻員
String[]
:語言代碼陣列。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getTab(tabId)
getTabs()
取得文件中的所有未巢狀 Tab
。
分頁可以包含子分頁,也就是位於另一個分頁中的分頁。兒童分頁可供使用
使用 Tab.getChildTabs()
。
回攻員
Tab[]
:屬於文件的所有 Tab
清單。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getUrl()
擷取網址以存取目前的文件。
var doc = DocumentApp.getActiveDocument(); // Send out the link to open the document. MailApp.sendEmail("<email-address>", doc.getName(), doc.getUrl());
回攻員
String
:存取目前文件的網址。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getViewers()
newPosition(element, offset)
建立新的 Position
,其參照分頁中位置的參照 (相對於
特定元素 (如果是與文件「繫結」的指令碼),則使用中的分頁。如要建立
Position
(相對於任何分頁中的位置),請使用 DocumentTab.newPosition(element, offset)
方法。使用者的遊標以 Position
表示和其他用途。
// Append a paragraph to the active tab, then place the user's cursor after the first word of // the new paragraph. var doc = DocumentApp.getActiveDocument(); var paragraph = doc.getBody().appendParagraph('My new paragraph.'); var position = doc.newPosition(paragraph.getChild(0), 2); doc.setCursor(position);
參數
名稱 | 類型 | 說明 |
---|---|---|
element | Element | 元素應包含新的 Position ;這必須是
Text 元素或 Paragraph 等容器元素。 |
offset | Integer | 如果是 Text 元素,則 Position 前方的字元數;
如果是其他元素,則事件中 Position 之前的子元素數量
相同容器元素 |
回攻員
Position
:新的 Position
。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
newRange()
建立可透過以下標籤元素建構 Range
物件的建構工具:
第一個分頁,如果是繫結至
文件、使用中的分頁。建立用於建構 DocumentRange
物件的建構工具
從任何分頁中的分頁標籤元素中,使用 DocumentTab.newRange()
方法。
// Change the user's selection to a range that includes every table in the active tab. var doc = DocumentApp.getActiveDocument(); var rangeBuilder = doc.newRange(); var tables = doc.getBody().getTables(); for (var i = 0; i < tables.length; i++) { rangeBuilder.addElement(tables[i]); } doc.setSelection(rangeBuilder.build());
回攻員
RangeBuilder
:新的建構工具。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
removeEditor(emailAddress)
將特定使用者從 Document
的編輯者清單中移除。這個方法
如果使用者所屬的類別含有以下使用者類別,則禁止使用者存取 Document
一般存取權,例如 Document
已與整個使用者共用
網域,或是 Document
位於使用者可以存取的共用雲端硬碟中。
針對雲端硬碟檔案,這麼做也會將使用者從檢視者清單中移除。
參數
名稱 | 類型 | 說明 |
---|---|---|
emailAddress | String | 要移除的使用者電子郵件地址。 |
回攻員
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
removeEditor(user)
將特定使用者從 Document
的編輯者清單中移除。這個方法
如果使用者所屬的類別含有以下使用者類別,則禁止使用者存取 Document
一般存取權,例如 Document
已與整個使用者共用
網域,或是 Document
位於使用者可以存取的共用雲端硬碟中。
針對雲端硬碟檔案,這麼做也會將使用者從檢視者清單中移除。
參數
名稱 | 類型 | 說明 |
---|---|---|
user | User | 要移除的使用者表示法。 |
回攻員
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
removeViewer(emailAddress)
將特定使用者從 Document
的檢視者和加註者清單中移除。這個
如果使用者是編輯者,而不是檢視者或加註者,此方法不會生效。這個方法
無法禁止隸屬於特定類別的使用者存取 Document
但具備一般存取權,例如將 Document
與使用者的
或是使用者可以存取的共用雲端硬碟中,就刪除 Document
。
針對雲端硬碟檔案,這麼做也會將使用者從編輯者清單中移除。
參數
名稱 | 類型 | 說明 |
---|---|---|
emailAddress | String | 要移除的使用者電子郵件地址。 |
回攻員
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
removeViewer(user)
將特定使用者從 Document
的檢視者和加註者清單中移除。這個
如果使用者是編輯者,而不是檢視者,此方法不會有任何作用。這個方法也不會
如果使用者屬於一般使用者的類別,就無法存取 Document
存取權,例如 Document
已與整個網域共用
如果 Document
位於使用者有權存取的共用雲端硬碟中。
針對雲端硬碟檔案,這麼做也會將使用者從編輯者清單中移除。
參數
名稱 | 類型 | 說明 |
---|---|---|
user | User | 要移除的使用者表示法。 |
回攻員
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
saveAndClose()
儲存目前的 Document
。導致系統清除及套用待處理的更新。
指令碼執行結束時,會自動叫用 saveAndClose()
方法
。Document
。
無法編輯已關閉的Document
。使用DocumentApp.openById()
重新開啟
所選文件。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
setActiveTab(tabId)
使用者在目前文件中選取的 Tab
設為具有指定 ID 的分頁。
const doc = DocumentApp.getActiveDocument() // Sets the user's selected tab by its ID. // TODO(developer): Replace the ID with your own. const tab = doc.setActiveTab(TAB_ID);
參數
名稱 | 類型 | 說明 |
---|---|---|
tabId | String | 設為有效分頁的 ID。 |
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
setCursor(position)
設定 Position
做為使用者的遊標。指令碼只能存取
執行指令碼,且僅限指令碼已繫結至文件的使用者。
透過停用中的 Tab
提供 Position
會切換使用者使用中的分頁。
var doc = DocumentApp.getActiveDocument(); var documentTab = doc.getActiveTab().asDocumentTab(); // Append a paragraph, then place the user's cursor after the first word of the new paragraph. var paragraph = documentTab.getBody().appendParagraph('My new paragraph.'); var position = documentTab.newPosition(paragraph.getChild(0), 2); doc.setCursor(position);
參數
名稱 | 類型 | 說明 |
---|---|---|
position | Position | 新的遊標位置。 |
回攻員
Document
- 這個 Document
用於鏈結。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
setLanguage(languageCode)
設定文件的語言代碼。這是文件編輯器的「檔案」中顯示的語言。
>語言,這可能不是文件包含的實際語言。使用 getSupportedLanguageCodes()
取得所有有效的語言代碼。
參數
名稱 | 類型 | 說明 |
---|---|---|
languageCode | String | 語言代碼。 |
回攻員
Document
- 這個 Document
用於鏈結。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
setName(name)
setSelection(range)
根據 Range
,在使用中分頁中設定使用者的選項。指令碼只能
存取執行指令碼的使用者選項,且只在指令碼繫結至文件時。
var doc = DocumentApp.getActiveDocument(); var documentTab = doc.getActiveTab().asDocumentTab(); // Change the user's selection to a range that includes every table in the document. var rangeBuilder = documentTab.newRange(); var tables = documentTab.getBody().getTables(); for (var i = 0; i < tables.length; i++) { rangeBuilder.addElement(tables[i]); } doc.setSelection(rangeBuilder.build());
參數
名稱 | 類型 | 說明 |
---|---|---|
range | Range | 可選取的新元素範圍。 |
回攻員
Document
- 這個 Document
用於鏈結。
授權
使用這個方法的指令碼需要下列一或多個範圍的授權:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents